Web conference asset management

ABSTRACT

Management of web conference assets in a content management system. At the conclusion of a web conferencing session, an event is raised at the content management system. Various web conference assets (e.g., recordings) and web conference parameters are analyzed in conjunction with content management system metadata. Based on the analysis, one or more actions to perform on the web conference assets are determined. The content management system metadata may include user profile information of at least one web conference participant. Rules and/or a classification model that considers then-current conditions at the content management system are used singly, or in combination, to determine action characteristics and/or labels such as a retention period or security classifications to apply to the web conference assets. The web conference assets are stored in a hierarchical directory at the content management system. The hierarchy of the directory is derived from aspects of the web conferencing facility.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of U.S. application Ser. No.17/209,220, filed Mar. 23, 2021 and titled “WEB CONFERENCE ASSETMANAGEMENT” which is hereby incorporated by reference in its entirety.

TECHNICAL FIELD

This disclosure relates to content management systems, and moreparticularly to techniques for web conference asset management within acontent management system.

BACKGROUND

In today's modern world of digitally-captured and widely distributeddigital data, certain data needs to be handled with great particularity,and sometimes under regulatory control. In fact some of such data mightbe subject to jurisdictional regulation (e.g., handling of informationpertaining to national security, handing of patient information,handling of personally-identifiable information, etc.). In somesituations such data might be shown (e.g., via web conference sharing)and/or discussed (e.g., in a voiceover narration) during the course of aweb conference and, as such, the web conferencing materials (e.g., videorecording of the web conference) need to be handled specially (e.g.,marked or labeled as being sensitive, retained for a specified period,deleted, etc.). As examples, the materials (e.g., the recording and/orchat stream) from a web conference in which someone's personallyidentifiable information was shared should be labeled as such, andshould thereafter be handled in the same manner as other documents thatcontain personally identifiable information. As another example,consider the case when a participant in the web conference showed adocument on the screen that was designated as “Top Secret.” In thatcase, the web conference assets should be labeled as “Top Secret”, andshould thereafter be handled in the same manner as other documents thatare labeled as “Top Secret.”

Unfortunately, there are no known techniques for determining whether ornot conferencing materials need to be handled specially.

SUMMARY

This summary is provided to introduce a selection of concepts that arefurther described elsewhere in the written description and in theFIGURES. This summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tolimit the scope of the claimed subject matter. Moreover, the individualembodiments of this disclosure each have several innovative aspects, nosingle one of which is solely responsible for any particular desirableattribute or end result.

The present disclosure describes techniques used in systems, methods,and in computer program products for web conference asset management,which techniques advance the relevant technologies to addresstechnological issues with legacy approaches. More specifically, thepresent disclosure describes techniques used in systems, methods, and incomputer program products for handling web conference assets in acontent management system. Certain embodiments are directed totechnological solutions for combining metadata of the content managementsystem with metadata of the web conferencing materials to determineoptions for handling web conference assets.

The disclosed embodiments modify and improve over legacy approaches. Inparticular, the herein-disclosed techniques provide technical solutionsthat address the technical problems attendant to determining how tohandle potentially sensitive web conferencing materials. Such technicalsolutions involve specific implementations (i.e., data organization,data communication paths, module-to-module interrelationships, etc.)that relate to the software arts for improving computer functionality.

The ordered combination of steps of the embodiments serve in the contextof practical applications that perform steps for combining metadata ofthe content management system with metadata of the web conferencingmaterials to determine options for handling web conference assets. Thesetechniques for combining metadata of the content management system withmetadata of the web conferencing materials to determine options forhandling web conference assets overcome long standing yet heretoforeunsolved technological problems that arise in the realm of computersystems.

Many of the herein-disclosed embodiments for combining metadata of thecontent management system with metadata of the web conferencingmaterials to determine options for handling web conference assets aretechnological solutions pertaining to technological problems that arisein the hardware and software arts that underlie content managementsystems. Aspects of the present disclosure achieve performance and otherimprovements in peripheral technical fields including, but not limitedto, distributed collaboration systems and data storage.

Some embodiments include a sequence of instructions that are stored on anon-transitory computer readable medium. Such a sequence ofinstructions, when stored in memory and executed by one or moreprocessors, causes the one or more processors to perform a set of actsfor combining metadata of the content management system with metadata ofthe web conferencing materials to determine options for handling webconference assets.

Some embodiments include the aforementioned sequence of instructionsthat are stored in a memory, which memory is interfaced to one or moreprocessors such that the one or more processors can execute the sequenceof instructions to cause the one or more processors to implement actsfor combining metadata of the content management system with metadata ofthe web conferencing materials to determine options for handling webconference assets.

In various embodiments, any combinations of any of the above can beorganized to perform any variation of acts for handling web conferenceassets in a content management system, and many such combinations ofaspects of the above elements are contemplated.

Further details of aspects, objectives and advantages of thetechnological embodiments are described herein, and in the FIGURES andclaims.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings described below are for illustration purposes only. Thedrawings are not intended to limit the scope of the present disclosure.

FIG. 1A exemplifies an environment in which embodiments of thedisclosure can be practiced.

FIG. 1B illustrates example mapping techniques for mapping webconference system properties into properties of a content managementsystem, according to an embodiment.

FIG. 1C illustrates example web conference asset processing techniquesas implemented in a content management system, according to anembodiment.

FIG. 1D illustrates example web conference asset handling scenarios forhandling web conference assets in a content management system, accordingto an embodiment.

FIG. 2 presents a flowchart showing an example processing flow fordetermining handling actions to be taken on web conferencing materials,according to an embodiment.

FIG. 3 illustrates several combinable or alternative actiondetermination techniques as implemented in a content management system,according to an embodiment.

FIG. 4A shows a detailed processing flow for implementing rule-basedaction determination techniques in a content management system,according to an embodiment.

FIG. 4B shows a detailed processing flow for implementing model-basedaction determination techniques in a content management system,according to an embodiment.

FIG. 5 depicts system components as arrangements of computing modulesthat are interconnected so as to implement certain of theherein-disclosed embodiments.

FIG. 6A and FIG. 6B present block diagrams of computer systemarchitectures having components suitable for implementing embodiments ofthe present disclosure and/or for use in the herein-describedenvironments.

DETAILED DESCRIPTION

Aspects of the present disclosure solve problems associated with usingcomputer systems for determining how to handle potentially sensitive webconferencing materials. These problems are unique to variouscomputer-implemented methods for determining how to handle potentiallysensitive web conferencing materials in the context of contentmanagement systems. Some embodiments are directed to approaches forcombining metadata of the content management system with metadata of theweb conference system to determine options for handling the webconference assets. The accompanying FIGURES and discussions hereinpresent example environments, systems, methods, and computer programproducts.

Overview

Participants in a web conference often share documents with the otherparticipants by showing, in a shared virtual surface, certain portionsof a shared document. Often, all or portions of the web conference arerecorded (e.g., as a video recording and/or an audio recording).Sometimes the portions that have been shared and recorded includesensitive information. This gives rise to the situation that the webconference recording itself now also contains the shared sensitiveinformation. Accordingly, the web conference recording and any otherassets of the web conference needs to be handled in a manner the sameas, or similar to, the manner in which the document containing thesensitive information is handled. For example, if the document thatcontains the sensitive information originated from a secure storagefacility that was only accessible to the sharer, then the web conferenceassets, or at least the portions of the assets that contain thesensitive information, should also be securely stored.

It often happens that the host of the web conference and/or otherparticipants of the web conference are also users of a contentmanagement system and, as such, the information shared during the courseof the web conference originate from files of a content managementsystem. This situation gives rise to the possibilities that (1) the webconference assets can contain sensitive information, and (2) the webconference assets should, therefore (at least potentially) be handled inthe same manner as the document or documents from which the sensitiveinformation originated.

Disclosed herein are techniques for determining how to handlepotentially sensitive web conferencing materials. More specifically,disclosed herein are techniques for combining metadata of the contentmanagement system with metadata of the web conferencing system todetermine options for handling web conference assets. The disclosedtechniques cover a wide range of use models. Techniques for mappingusers (e.g., participants of the web conference facility with users ofthe content management system) are disclosed. Further, techniques forgathering metadata pertaining to the mapped users are disclosed.

Some embodiments include enriching the web conference assets withnewly-generated metadata arising from outputs of transcription services.Various constituents of (1) metadata from the transcription services,(2) metadata of the users, (3) metadata from the content managementsystem, and (4) metadata of the web conference assets themselves can beanalyzed singly or in combination so as to arrive at handling optionsfor the web conference assets. The options may derive from applicationof metadata-driven rules (e.g., rules that specify conditions andcorresponding asset handling actions to be taken when the conditions arepresent). In some embodiments, web conference asset handling options mayderive from consultation with a predictive model. In some embodiments,the predictive model is trained with results of the application of theforegoing rules in combination with then-present signals from thecontent management system.

As used herein, such web conferencing systems comprise applications thatare not provided and/or maintained by the content management systemprovider but rather are applications that are provided and/or maintainedby third parties (e.g., entities other than the maintainer of thecontent management system) and are merely integrated with the contentmanagement system so as to facilitate interactions pertaining to webconference asset handling.

Definitions and Use of Figures

Some of the terms used in this description are defined below for easyreference. The presented terms and their respective definitions are notrigidly restricted to these definitions-a term may be further defined bythe term's use within this disclosure. The term “exemplary” is usedherein to mean serving as an example, instance, or illustration. Anyaspect or design described herein as “exemplary” is not necessarily tobe construed as preferred or advantageous over other aspects or designs.Rather, use of the word exemplary is intended to present concepts in aconcrete fashion. As used in this application and the appended claims,the term “or” is intended to mean an inclusive “or” rather than anexclusive “or”. That is, unless specified otherwise, or is clear fromthe context, “X employs A or B” is intended to mean any of the naturalinclusive permutations. That is, if X employs A, X employs B, or Xemploys both A and B, then “X employs A or B” is satisfied under any ofthe foregoing instances. As used herein, at least one of A or B means atleast one of A, or at least one of B, or at least one of both A and B.In other words, this phrase is disjunctive. The articles “a” and “an” asused in this application and the appended claims should generally beconstrued to mean “one or more” unless specified otherwise or is clearfrom the context to be directed to a singular form.

Various embodiments are described herein with reference to the FIGURES.It should be noted that the FIGURES are not necessarily drawn to scale,and that elements of similar structures or functions are sometimesrepresented by like reference characters throughout the FIGURES. Itshould also be noted that the FIGURES are only intended to facilitatethe description of the disclosed embodiments-they are not representativeof an exhaustive treatment of all possible embodiments, and they are notintended to impute any limitation as to the scope of the claims. Inaddition, an illustrated embodiment need not portray all aspects oradvantages of usage in any particular environment.

An aspect or an advantage described in conjunction with a particularembodiment is not necessarily limited to that embodiment and can bepracticed in any other embodiments even if not so illustrated.References throughout this specification to “some embodiments” or “otherembodiments” refer to a particular feature, structure, material orcharacteristic described in connection with the embodiments as beingincluded in at least one embodiment. Thus, the appearance of the phrases“in some embodiments” or “in other embodiments” in various placesthroughout this specification are not necessarily referring to the sameembodiment or embodiments. The disclosed embodiments are not intended tobe limiting of the claims.

Descriptions of Example Embodiments

FIG. 1A exemplifies an environment 1A00 in which embodiments of thedisclosure can be practiced. The FIGURE is being presented to illustraterelate aspects of a web conferencing facility 150 with aspects of acontent management system 101. Specifically, the FIGURE is beingpresented to show how web conferencing system participants 114 intersectwith content management system users 112, and to show how metadata fromthe web conferencing facility (e.g., WCF metadata 122) can be combinedwith content management system metadata (e.g., CMS metadata 123) so asto determine actions to be taken on the web conference assets.

Such asset handling actions might involve storing the web conferencingmaterials 124 (video, audio, chat, etc.) in the content managementsystem in a manner that facilitates sharing and/or furthercollaboration. Or such asset handling actions might involve storing theweb conferencing materials in the content management system with one ormore designations (e.g., “Top Secret,” “Sensitive,” etc.), whichdesignations in turn influence or govern the ongoing handling of the webconferencing materials. In some situations, the web conferencingmaterials are purposely not stored and instead sent to a trashcan 166 orotherwise handled to avoid any further proliferation of the webconferencing materials.

As shown, the content management system maintains a large corpus ofinformation that is not available at the web conferencing facility 150.In the embodiment shown, the corpus of information at the contentmanagement system 101 that is not available at the web conferencingfacility 150 includes user metadata 106, possibly including userprofiles 107 and user-specific instances of historical data 111. Suchinformation from the content management system (e.g., user information116) can be used to enrich other information that derives from the webconferencing facility (e.g., participant information 117). As anexample, whereas a participant in a web conference might be known to theweb conference facility only by a screen name, an avatar, and/or an IPaddress, if the participant is also a user of the content managementsystem, then that participant can be correlated to collaboration groups109 and/or sharing events 113 and/or a wealth of other sharing data 108that is captured and maintained at the content management system.

In this and other embodiments, web conferencing facility 150 includescapabilities for recording video (e.g., any imagery that is shared withother participants of the web conference during the course of the webconference), and/or capabilities for recording audio, and/orcapabilities for recording chat or other intra-conference messaging.Some web conferencing facilities include or are integrated withtranscription services 128 and/or other services that serve to amassthen-current and historical compliance data 160. In addition to theforegoing recordings (e.g., web conferencing materials), variousinformation that pertains to the foregoing recordings and/or otheraspects a particular web conference (e.g., WCF metadata 122) can becaptured by the web conferencing facility and/or its agents. The contentmanagement system can gather such web conference information on demand(step 138). In turn, the content management system can further gathercertain information from the content management system (step 139), whichfurther gathered information serves to enrich the information gatheredfrom the web conferencing facility. The combination of metadata from theweb conferencing facility and metadata from the content managementsystem provides a wealth of information that can be used to determineasset handling actions to be taken (step 146) on the web conferencingmaterials 124.

As earlier indicated, asset handling actions to be taken on the webconferencing materials might include storing the web conferencingmaterials in the content management system with a particular one or moredesignations that influence or govern the ongoing handling of the webconferencing materials. In some embodiments, and as shown, the contentmanagement system includes content object handling policies 110 that areestablished specifically to aid enforcement that content objects ofcertain designations are indeed managed over time in accordance with theapplicable policies. Such content object handling policies can beadvantageously applied to incoming web conference assets. As used inthis and other embodiments, web conference assets include a videorecording of a corresponding web conferencing session. Such a videorecording may include images relating to a likeness (e.g., a graphicalavatar, or a text avatar) of participants. Such a video recording mayinclude images that correspond to presentation of, and/or movement orother manipulation of graphical renderings that are shared (e.g.,displayed) in one or more windows of a user interface of at least one ofthe participants of the session. In some cases, the graphical renderingsthat are shared (e.g., displayed) in one or more windows are renderingsthat are manipulated by a host of a session. In some cases, thegraphical renderings are renderings that are manipulated by a non-hostparticipant of a session. In some cases, the graphical renderings arerenderings that include an opaque or transparent whiteboard.

As shown, the result of determining asset handling actions to be taken(e.g., based on execution of step 146) includes a set of one or moreasset handling actions and one or more labels. A switch that takesdifferent action paths (via decision 148) is configured to take thedifferent action paths based on the determined asset handling actionsand/or labels 147. In some scenarios, the web conferencing materials arestored in the content management system; in some scenarios, the webconferencing materials are deleted; in some scenarios, only the webconferencing metadata is stored in the content management system; insome scenarios, the web conferencing materials are stored in the contentmanagement system with an association to one or more content objecthandling policies 110 of the content management system; in somescenarios, the web conferencing materials are stored in the contentmanagement system with an association to one or more labels of thecontent management system. In some scenarios, the web conferencingmaterials are stored in the content management system with anassociation to one or more labels of the content management system; insome scenarios, an external user is alerted to review the webconferencing materials; in some scenarios, the web conferencingmaterials are moved into a different storage zone (e.g. into a UnitedStates geographical storage zone or into a United Kingdom geographicalstorage zone).

Strictly as examples, the foregoing labels of the content managementsystem may be a label pertaining to a security level or security policy(e.g., “Top Secret”) or a label may pertain to a geographic location oroperating zone, etc. The labels, possibly in combination with contentobject handling policies 110 serve to ensure that content objects (e.g.,web conference assets) that are associated with a particular label aremanaged over time in accordance with the semantics of the labels and/orassociated policies.

Content management systems and web conferencing systems are often usedconcurrently by the same people. This is shown by the three-personoverlap between the four web conferencing system participants 114 andthe four content management system users 112. However, it often happensthat the platform that hosts the content management system and theplatform that hosts the web conferencing system are different. Forexample, a content management system might be hosted by “GigaFiles-R-Us,Inc.,” whereas the concurrently-used web conferencing system is hostedby “Conferences-R-Us, Inc.” or some other third-party. In fact theparticular combination of a content management system and any of avariety of web conferencing systems may vary by industry, or byenterprise, or by locale, or by department, or even by personalpreferences.

Accordingly, when there are two or more collaborators from differentindustries, or from different enterprises, or situated in differentlocales, or assigned to different departments, it often happens that atleast some members of the group of users of the content managementsystem are different than at least some members of the group of users ofthe messaging or collaboration system. Moreover, even when a user of acontent management system is the same person as a participant on the webconferencing system, the login credentials and/or aliases, and/or otherproperties are semantically and/or syntactically different from theproperties of the web conferencing system.

To accommodate semantic and/or syntactical similarities and differencesbetween a web conferencing facility and a content management system,some embodiments automatically reconcile semantic and/or syntacticaldifferences, and some embodiments automatically generate a folder andfile hierarchy of sharable objects in a content management system basedon a mapping of properties of the particular web conferencing system toproperties of the content management system. Such anautomatically-generated folder and file hierarchy can, as an option,serve as a virtual storage location for web conference assets.

FIG. 1B illustrates example mapping techniques for mapping webconference system properties into properties of a content managementsystem. As an option, one or more variations of mapping techniques 1B00or any aspect thereof may be implemented in the context of thearchitecture and functionality of the embodiments described hereinand/or in any environment.

As depicted by the dotted lines between content management system 101and web conferencing facility 150, there is a correspondence between webconferencing facility hierarchy 176 and content management systemcontent object hierarchy 175. In the shown example, a set of webconference “Participants” is mapped to a “Group” in the contentmanagement system; the “Shares” from the web conferencing facility aremapped to “Topics” in the content management system; and specific“Items” from the web conferencing facility are mapped to “Files” in thecontent management system. This automatically-generated folder and filehierarchy can, as an option, serve as a virtual storage location for webconference assets. As an alternative, the web conference assets can bepurposely not stored in the automatically-generated folder and filehierarchy. This option—where the web conference assets are purposely notstored in an automatically-generated folder and file hierarchy—might beimplemented when the web conference assets are deemed to be corrupted ordefective, and/or are deemed to contain malicious code.

This situation where there are semantic and/or syntactic differencesbetween properties of the web conferencing system and properties of thecontent management system is made more complex when the computinginfrastructure for hosting the content management system is located in afirst geographic location (e.g., in a first country), and the computinginfrastructure for hosting the web conferencing system is located in adifferent geographic location (e.g., in a different country). Morespecifically, the computer representations for the foregoing propertiesmay be specified in different languages.

To aid in reconciliation and mapping between properties, integrationcode 165 it situated within web conferencing facility 150 and mappingmodules (e.g., user mapping module 162 and content mapping module 164)are situated within content management system 101. The systems interactover application programming interfaces (APIs). Strictly as anillustrative example, integration code 165 can communicate to usermapping module 162 via API 1571 and API 1581. The mapped-to users may beused to determine a collaboration group that corresponds to theparticular event of the web conference. As another illustrative example,integration code 165 can communicate to content mapping module 164 viaAPI 1572 and API 1582. The mapped-to content objects 171 (e.g., any oneor more of the web conference assets 173) may be populated into theforegoing automatically-generated folder and file hierarchy. In somecases, there is content in addition to the web conference assets 173,and such content can be stored in content object storage 105. In someimplementations of content management systems, theautomatically-generated folder and file hierarchy is merely a logicalconstruct that refers to items in content object storage 105.

Various techniques for automatically generating a folder and filehierarchy can be employed whenever there is a hierarchy in the webconferencing system that lends itself to a hierarchy of objects. Assuch, the implementation of FIG. 1B is merely an example and manyalternatives or variations are possible. Aspects of the web conferencingfacility hierarchy are mapped automatically to objects of the contentmanagement system. In the shown implementation, the web conferencingfacility hierarchy 176 is either provided by the web conferencingsystem, or is inferred by the content management system. The webconferencing facility hierarchy can be determined in whole or in partusing any known means. For example, the web conferencing facilityhierarchy can be defined by a table, or by a series of parenthesized ordelimiter-separated hierarchical elements, or the hierarchy of the webconferencing system can be codified in Java or JSON, etc.

The thusly-defined web conferencing facility hierarchy can drive amapping algorithm to map from aspects of the hierarchy of the webconferencing system to objects of the content management system. In somecases, a particular mapping algorithm is selected based on the specificweb conferencing system of interest. In some cases, a particular mappingalgorithm is selected based on the then-current configuration of thespecific web conferencing system of interest. In some cases, aparticular mapping algorithm is selected based on the then-currentparameters of a then-current session of the specific web conferencingsystem of interest. In some cases, a “Channel” of the web conferencingsystem is mapped to a project folder. In some cases, any one of the“Items” (e.g., shared documents, portions of discussions or commentthreads, an event, etc.) is mapped to one or more files.

In some cases, the web conferencing facility is a web conferencingsystem (e.g., Microsoft Office Teams®, Zoom®, etc.), for which there isan implied hierarchy built into the use model. Strictly as an example, atop level of a third-party web conferencing hierarchy might correspondto the participants of the web conference session, whereas a secondlevel of the third-party web conferencing hierarchy might correspond toa particular share (e.g., shared desktop, shared application, sharedwhiteboard, etc.), and whereas a third level of the third-party webconferencing hierarchy might correspond to particular items or events ortypes of events that are raised during the presentation of the share tothe participants (e.g., an annotation on the shared desktop, chatcontents that were raised while the shared application was the activeshare, security settings that were changed while the shared whiteboardwas the active share, etc.).

A web conferencing system may have multiple implied hierarchies builtinto its use models. For example, a “Department” may have one or more“Channels,” and each channel might have “Subscribers,” or an“Enterprise” may have one or more “Projects” and each operating unitmight have one or more “Teams.”

In some cases, a web conferencing system is a web conferencingapplication that includes a native messaging facility (e.g., a chatfacility). In such cases, the occurrences of messaging events (e.g.,sending some text to another participant, or broadcasting a URL to allparticipants, etc.) can be timestamped by the web conferencing system ina manner that relates the timestamped event to the then-current webconferencing share. For example, at the moment that “Desktop A” is beingshared by “User A,” it can happen that “User B” sends chat content.Since the moment that “Desktop A” is being shared by “User A” can betimestamped, and since the moment that “User B” sends chat content tothe participants can also be timestamped, those two different aspects ofthe web conference can be interrelated, at least by the specific timeindicated in the timestamp.

Any one or more of the content objects of the content management systemcan take on a particular set of permissions. In some cases, constituentsof the object hierarchy can initially be assigned to access permissionsthat are derived from a particular user. In some cases, constituents ofthe object hierarchy can initially be assigned to access permissionsthat are derived from a particular channel. In some cases, constituentsof the object hierarchy can initially be assigned to access permissionsthat are derived from a particular item.

In some cases, various web conferencing facility assets and associatedweb conferencing facility parameters are used to map into a directorystructure in the content management system. In some cases, various webconferencing facility assets and associated web conferencing facilityparameters are used to define a directory structure in the contentmanagement system. In some cases, the hierarchy of the directorystructure is at least partially pre-defined, however in other cases,hierarchy of the directory structure is derived from web conferencingfacility assets and associated web conferencing facility parameters.Such a hierarchical directory structure is used to store webconferencing facility assets. Strictly as examples, the content of webconferencing facility assets and associated web conferencing facilityparameters may include participant information, participant roleinformation, timestamps, hierarchical relationships between items thatcomprise the web conferencing facility assets, hierarchicalrelationships between keywords or project names that are extracted bytranscription services, etc.

In some cases, a WCF hierarchy is pre-defined in the web conferencingfacility. In other cases, content of the web conferencing facilityassets and associated web conferencing facility parameters is used toinfer a WCF hierarchy. In some cases, one or more aspects of the WCFhierarchy are correlated to a second hierarchy corresponding to adirectory structure in the content management system.

The foregoing mapping of object hierarchies may further includeassigning permissions to the second hierarchy. Different locations inthe second hierarchy may be assigned different permissions. Furtherdetails regarding general approaches to mapping object hierarchies andpermissions are described in U.S. application Ser. No. 16/948,838 titled“CROSS-PLATFORM COLLABORATION SYSTEMS” filed on Oct. 1, 2020, which ishereby incorporated by reference in its entirety.

As another illustrative example, integration code 165 can communicatewith the content management system to retrieve a content object, whichis then shared (e.g., in shared documents window 156) such that theparticipants of the web conference can see at least portions of theretrieved content object. In some cases, some of the web conferencingsystem participants are not content management system users. In suchcases, a temporary user profile is created at the content managementsystem to facilitate at least temporary access to the web conferenceassets by the web conferencing system participants who are not contentmanagement system users. Such a temporary user profile can be marked tobe valid and operable for only a pre-determined duration. Such atemporary user profile can be promoted to a non-temporary user profilein the content management system.

Additionally or alternatively a web conferencing system participant whodoes not initially have a user profile in the content management systemmight be at least temporarily attached to a valid content managementsystem user's profile. As such, the web conferencing system participantcan inherit the same permissions as the content management system userprofile to which the web conferencing system participant is at leasttemporarily attached.

In addition to automatically generating and populating a folder and filehierarchy, and in addition to mapping permissions and other propertiesbetween the two systems, some implementations of content managementsystems make use of specialized transcription services, results fromwhich specialized transcription services can be used to determineactions to be taken on web conference assets. These specializedtranscription services can be situated external to the contentmanagement system, or can be situated internal to the content managementsystem, or in some architectures, the specialized transcription servicescan be situated partly within the content management system and partlyoutside of the content management system.

One such implementation involving specialized transcription services toprocess web conference assets is shown and described as pertains to FIG.1C.

FIG. 1C illustrates example web conference asset processing techniquesas implemented in a content management system. As an option, one or morevariations of web conference asset processing techniques 1C00 or anyaspect thereof may be implemented in the context of the architecture andfunctionality of the embodiments described herein and/or in anyenvironment.

The FIGURE is being presented to show how a content management systemcan be architected to use the outputs of transcription services 128 toinform an action determination module 140 that in turn outputs a set ofdetermined actions 141 ₀ to be taken over the web conference assets.Specifically, and as shown, communication paths are established betweenthe content management system 101 and the transcription services 128.Further, communication paths are established within the contentmanagement system to facilitate movement of data to and from theprocessing modules (e.g., web conferencing materials processing module121, action determination module 140, action processing module 142) andstorage locations (e.g., content object storage 105 and content objectmetadata storage 103).

When a web conference recording becomes available (e.g., upon togglingoff record button 152 of the web conferencing controls 155), integrationcode 165 sends an event from the web conferencing facility to thecontent management system (e.g., asset available event 130). Next, thecontent management system receives (e.g., via message 131) the assets(e.g., web conferencing materials) into web conferencing materialsprocessing module 121 and processes the assets. One function of webconferencing materials processing module 121 is to cast the webconferencing materials into content objects that comport with one ormore specific formats. For example, the web conferencing materials mightbe received in a format that is native to the web conferencing facility,whereas the content management system natively uses a different format.This casting can be accomplished in whole or in part by the integrationcode 165, or this casting can be accomplished in whole or in part by webconferencing materials processing module 121. Another function of webconferencing materials processing module 121 is to identify metadatafrom the web conference assets (e.g., in operation 132) and mark andstore any received web conferencing metadata. Yet another function ofweb conferencing materials processing module 121 is to send the webconferencing materials 124 (e.g., in any applicable format) totranscription services 128 (e.g., to transcribe the materials, asshown).

The transcription services are configured to produce transcription data(e.g., shown as transcribed data 127), which in turn may be divided intoa plurality of content objects (e.g., shown as content objects 126_(ORIG)). For example, transcription services may produce achapter-oriented binder of materials that are derived from a singlevideo recording. Each chapter in turn may comprise (1) a text-orientedtranscription of the chapter, and/or (2) a manifest of names of peoplementioned in the audio portion of the recording, and/or (3) a manifestof personally-identifiable information and however many locations withinthe recording where the corresponding personally-identifiableinformation and locations are mentioned, and/or (4) a manifest ofpassages (e.g., a frame range) where secret, confidential, proprietaryor other sensitive information is shown and/or discussed, and/or (5) amanifest of meeting topics (e.g., “This chapter comprises a financialdocument review”) and/or (6) closed captioning for video portions of therecording, and/or (7) other derivatives from the video recording.

In some cases the transcription services might be provided with one ormore seeds of context. Such seeds of context might be in the form ofkeywords (e.g., “contract,” or “deal,” or “finance” or “project”, or“product” or any of the foregoing in conjunction with a correspondingspecific contract identifier or deal name or project name or productname(s), etc.) so that the transcription services can explicitlyidentify locations within the recording where the keywords are usedand/or where a discussion corresponding to the keyword or keywords takesplace.

Any one or more of the content objects 126 _(ORIG) can be subjected toadditional processing before being provided to action determinationmodule 140. The additional processing might include analyzing theforegoing manifests to identify content management system users who aredeemed to be the same as the people mentioned in the audio portion ofthe recording. The additional processing might include preparingmetadata. More specifically, and in accordance with the example shown,certain additional processing is carried out in the web conferencingmaterials processing module so as to gather and/or produce contentobject metadata 125 _(ORIG) which corresponds to content objects 126_(ORIG).

The action determination module processes inputs that derive from anyaspect of any data of the content management system, possibly incombination with any of the data that is produced by the transcriptionservices. The action determination module uses these inputs to determineactions to apply to the web conferencing materials (operation 134) andassemble a set of determined actions 141 ₀ into a format that can bereceived by action processing module 142. The determined actions can bea codification of any one or more of the asset handling actions asheretofore discussed. In some implementations, the determined actionsmay include any one or more actions in addition to the asset handlingactions as heretofore discussed with respect to decision 148 of FIG. 1A.The determination of any or all of the foregoing actions can be based onconditions present in the content management system.

In some situations, and based on characteristics of the determinedactions, and/or based on conditions present in the content managementsystem, the action processing module will perform, or initiateperformance of, the determined actions over the web conferencingmaterials (operation 136). In some cases, performance of the determinedactions over the web conferencing materials includes casting the webconferencing materials into content objects that comport with thecontent object codification regime of the content management system. Insome cases, performance of the determined actions over the webconferencing materials includes making changes to the web conferencingmaterials and/or content objects derived therefrom. In such cases, thisresults in modified content objects 126 _(MOD) and/or modified contentobject metadata 125 _(MOD). Strictly as example, changes to the webconferencing materials and/or to content objects therefrom (e.g.,content objects 126 _(MOD)) might include redaction of portions of thevideo recording. Changes to content object metadata (content objectmetadata 125 _(MOD)) might include a listing of what portions of thematerial (e.g., what range of frames or what range of timesteps) wereredacted.

The foregoing redaction example is merely one example scenario forhandling web conference assets. This and various other scenarios forhandling web conference assets in a content management system are shownand discussed as pertains to FIG. 1D.

FIG. 1D illustrates example web conference asset handling scenarios forhandling web conference assets in a content management system. As anoption, one or more variations of web conference asset handlingscenarios 1D00 or any aspect thereof may be implemented in the contextof the architecture and functionality of the embodiments describedherein and/or in any environment.

The FIGURE is being presented to illustrate that there are manydifferent scenarios under which there are many different actions thatwould be taken on web conference assets and/or corresponding webconference metadata. The FIGURE is intended to be merely illustrative ofcommonly occurring scenarios and, as such, the shown scenarios are notlimiting of all possible scenarios merely because of their presence inthe FIGURE.

The depicted scenarios (i.e., rows of the table) each have a conditionor set of conditions that are dominant in the scenario. When thecondition or set of conditions are deemed to be present at the time thatdecisions pertaining to handling of the web conference assets arepresented, then the shown actions (i.e., actions in the same row) arecarried out. There can be different actions taken on metadata ascompared with actions taken on assets themselves.

To illustrate a wide range of variations in the actions that can betaken, compare the actions specified for the “Default” scenario ascompared with the “Legal Hold” scenario. In the “Default” scenario, itis deemed that the web conference assets would most likely be accessed(e.g., for replay of the recording) within a relatively short time afterthe conclusion of the web conference. Accordingly, the web conferenceassets should be initially stored in “warm” or “hot” storage rather thanin “cold” storage, and some metadata value should designate anexpiration date, after which the web conference assets can be moved fromits location in “warm” or “hot” storage to “cold” storage. This handlingis different from the handling of web conference assets that are deemedto relate to a user or group or folder that is already designated as“Legal Hold” by the content management system. In such a case, when auser, or group to which the user belongs, or folder owned by the user,is marked as “Legal Hold” by the content management system, then the webconference assets are to be stored in a “hot” storage location, and witha “Legal Hold” designation. In some cases, the web conferenceparticipants include one or more users who are associated with anexternal company. In such as case, handling actions pertaining tometadata includes designation of any/all of the assets of the webconference with a label=“External”. In some cases, the presence of sucha label (e.g., “External”) causes additional handling actions (e.g.,handling actions corresponding to a retention policy) to be fired. Inone specific case, an additional handling action might be to apply alonger-term retention policy to the web conference assets.

As heretofore mentioned, the depicted scenarios each have a condition orset of conditions that correspond to the scenario. It can happen thatthe conditions corresponding to two or more scenarios may occur at anymoment in time. As such, it is possible that the actions to be taken onthe web assets can be in conflict. Resolution of such conflicts, shouldthey occur, is discussed hereunder as pertains to FIG. 4A.

The foregoing scenario discussions are merely examples, and many otherscenarios exist that have respective different handling profiles for theweb conference assets and corresponding metadata.

FIG. 2 presents a flowchart showing an example processing flow fordetermining handling actions to be taken on web conferencing materials.As an option, one or more variations of processing flow 200 or anyaspect thereof may be implemented in the context of the architecture andfunctionality of the embodiments described herein and/or in anyenvironment.

As shown, the flowchart is divided into two sets of operations: (1)initial data gathering operations 201 and (2) data combining andanalysis operations 221. The initial data gathering operations areinitiated upon receipt of an indication of a conclusion of a webconferencing recording session (step 202). Such an indication of aconclusion of a web conferencing recording session can be raised, forexample, by a web conferencing system when a web conference hascompleted. Additionally or alternatively, any indication of any event orevents of a web conferencing recording session can be raised when a webconferencing recording session has been paused. In some cases, a webconference may include multiple recording sessions, and a web conferencerecording session may include multiple subdivisions (e.g., chapters orindexed regions).

Upon receipt of such an event and/or upon receipt of an indication ofavailability of a recording of the web conferencing session (or portionthereof), some of the initial data gathering operations are carried outto retrieve the web conferencing materials (step 204), plus anycorresponding metadata such as metadata that is supplied by the webconferencing facility and/or its agents. In some cases, theaforementioned metadata (e.g., WCF metadata 122, as shown) is providedby the web conferencing facility together with the web conferencingrecording (e.g., web conferencing materials 124, as shown). In othercases, metadata is provided by a third party, such as a transcriptionservice provider that serves as an agent for the web conferencefacility.

Once the needed data has been gathered by the initial data gatheringoperations, processing proceeds to data combining and analysisoperations 221. At step 206, the data combining and analysis operationsanalyzes information pertaining to the web conferencing session. Theinformation pertaining to the web conferencing session may include videoand/or audio recordings, chat streams, whiteboard captures,transcriptions, etc. Further, the information pertaining to the webconferencing session may include a manifest of participants, a timelineof session events, and/or any other information pertaining to the webconferencing session.

The foregoing information pertaining to the web conferencing session isin turn correlated (at step 207) with information from the contentmanagement system. Such information, however correlated, is used todetermine how the web conferencing materials are to be handled. In someembodiments, such as is shown, such information, however correlated, isdelivered to an action determination module 140, which in turn providesa set of determined actions 141 ₀. Step 208 can receive the determinedactions from the action determination module as well as CMS metadata 123and then, based on this information from the content management system,step 208 can carry out further analysis to resolve to or otherwisedetermine at least one handling action to apply to the web conferencingmaterials. The at least one handling action can specify how and where tostore the web conferencing materials. A handling action can beassociated with labels or other metadata values that specify a policy asto how the web conferencing materials should be handled on an ongoingbasis. In some cases, a particular policy that governs how the webconferencing materials should be handled can be altered any number oftimes on an ongoing basis. Moreover, a particular policy that governshow the web conferencing materials should be handled can be evaluatedand re-evaluated over time.

Strictly as one example, a policy for handing personally-identifiableinformation might include dynamically-determined actions such as isgiven in the policies “If <all participants are from the U.S.A> then<select a U.S. mirror site>”, or “If <any participant is in Europe> then<select a European mirror site>. To accommodate policies that apply todynamically-determined actions such that the specific then-currentdynamically-determined actions can be taken over the web conferencingmaterials, the web conferencing materials may be labeled with a policyidentifier.

In addition to, or as an alternative to, associating web conferencingmaterials with a policy that governs handling of the web conferencingmaterials, handling actions can be determined by one or both of,rules-based analysis and/or model-based analysis.

FIG. 3 illustrates several combinable or alternative actiondetermination techniques as implemented in a content management system.As an option, one or more variations of action determination techniques300 or any aspect thereof may be implemented in the context of thearchitecture and functionality of the embodiments described hereinand/or in any environment.

The FIGURE is being presented to illustrate how multiple analysistechniques can be applied, singly or in combination, so as to resolve toa set of actions that apply to web conferencing materials. Morespecifically, the FIGURE is being presented to illustrate how arules-based analysis techniques can be applied independently from, or incombination with, a model-based analysis technique. Further, the FIGUREis being presented to illustrate how results from a rules-based analysiscan be used to train a classification model.

As shown, step 302 serves to select one or more analysis techniques toapply to the incoming instances of WCF metadata 122, and/or CMS metadata123, and/or web conferencing materials 124. The selection criteria mightpertain in part on availability of rules that inform how to handle webconferencing materials in the content management system. If there aresuch rules available, switch 304 will take the rules-based analysis path308, whereas, if there are no such rules available, switch 304 will takethe model-based analysis path 306.

Any one or more of the aforementioned rules can use CMS metadata 123 inconjunction with the then-current conditions and thereby emit one ormore actions. There may be many rules, and in some cases conditions maybe present such that multiple rules fire. In some such cases, it ispossible that more than one action is emitted by a rule such that theresult of operation of step 310 may include multiple determined actions.The multiple determined actions can be provided to a classificationmodel 314 for training. The classification model can emit one or moreactions based on any of a wide range of signals from, or conditionspresent, at the content management system.

The wide range of signals from, or conditions present at, the contentmanagement system can be signals and/or conditions that are codified inmetadata. As such, and given such metadata (e.g., CMS metadata 123and/or WCF metadata 122), step 310 can select and evaluate rules so asto determine application actions that at least potentially apply to theweb conferencing materials. The determined actions from evaluation ofthe rule, plus signals and/or conditions of the content managementsystem, can be used to train a classification model 314. In turn, andonce at least initially trained, classification model 314 can beconsulted (e.g., at step 312) to determine actions to take over the webconferencing materials.

As used herein, the terms “content management system metadata” and “CMSmetadata” are used interchangeably. As used herein in this and otherembodiments, the terms “content management system metadata” or “CMSmetadata” refer to information about data or objects that are native toa facility that stores data or objects in an manner that supportssharing of the data or objects between collaborators. As an example, acollaboration system stores files and other objects in a persistentmanner that supports concurrent access by multiple users who are groupedtogether into a collaboration group.

As used herein, the terms “web conferencing facility metadata” and “WCFmetadata” are used interchangeably. As used herein in this and otherembodiments, the terms “web conferencing facility metadata” and “WCFmetadata” refer to information about objects that are native to a systemor application that presents a common user interface (e.g., screen,whiteboard, etc.) to a group of participants. Such a common userinterface is ephemeral in the sense that the common user interface ispresented to a group of participants during a session, however thatcommon user interface closes or is destroyed at the conclusion of asession. Web conferencing facility metadata and WCF metadata may referto information about the participants of a session and/or to any aspectof the participants of the session, including any actions that anyparticular participant took during the course of the session. As anexample, web conferencing facility metadata might refer to theoccurrence of an intra-session message (e.g., chat) that was raisednatively (e.g., from within the web conferencing system or application)at some moment during the course of the session. As another example, webconferencing facility metadata might refer to information about theprogression (e.g., recording) of a session and/or to any aspect of therecording and/or its components (e.g., audio recording component, videorecording component, etc.). As yet another example, web conferencingfacility metadata might refer to information that was extracted fromassets of a session.

FIG. 4A shows a detailed processing flow for implementing rule-basedaction determination techniques in a content management system. As anoption, one or more variations of rule-based action determinationtechniques 4A00 or any aspect thereof may be implemented in the contextof the architecture and functionality of the embodiments describedherein and/or in any environment.

The FIGURE is being presented to illustrate how a plurality of rules canfire to produce a plurality of candidate actions to be taken over theweb conferencing materials, and how such candidate actions can beconsidered individually so as to resolve any conflicts that might bepresent in the semantics of the various candidate actions. The FIGUREshows a repository of action determination rules 403. The rule or rulescan be evaluated based on any characteristic or characteristics (e.g.,either singly or in combination) of metadata from the content managementsystem 101 and/or the web conferencing facility 150. Rules may have theform, “IF (condition) THEN (action)”.

A rule can be accessed (step 402) and metadata that pertains to thecondition(s) of the rules can be identified (step 404). When there is acorrespondence between an accessed rule and availability of metadatathat is used in the rule, then each such rule that can be evaluated(step 406) is evaluated using the available metadata. When theconditions of the rule are deemed to be present at the time the rule isevaluated, then the rule is said to have fired. The firing of a ruleemits at least one action, thus, when multiple rules fire, then multipleactions are emitted (e.g., determined actions 134 _(RULE)). The resultsof firing multiple rules can sometimes result in candidate actions(e.g., a first determined action 141 _(RULE) and a second determinedaction 141 _(RULE)), some of which candidate actions might be inconflict with another candidate action.

To resolve conflicts that might be present due to the semantics ofactions that are codified in candidate actions, a FOR EACH loop isentered. Step 408 of the loop serves to identify and resolve potentialconflicts among the candidate actions. Strictly as one example, one rulemight emit an action having semantics of, “store in tier3 storage”,whereas a different rule might emit an action having semantics of,“store in tier1 storage”. Any known technique can be used to resolvesuch conflicts. In some cases, more conservative actions take precedenceover less conservative actions. For example, if one then-currentcondition is associated with a 1-year retention period and anotherthen-current condition is associated with a 5-year retention period,then the more conservative 5-year retention period would be applied. Inother cases, less conservative actions take precedence over moreconservative actions. As shown, execution of step 408 results indetermination of at least one action (e.g., determined action 141_(RULE)). Such a determined action can be associated (step 410) with thethen-current conditions, and the combination of the determined rule andthe then-current conditions are used to train a classification model.

As heretofore discussed, multiple analysis techniques can be used,either singly or in combination, so as to resolve to a set of actionsthat apply to web conferencing materials. The foregoing discussionpertaining to FIG. 4A discloses how to make and use action determinationrules to implement rules-based action determinations, whereas thefollowing discussion pertaining to FIG. 4B discloses how to make an usea classification model to implement model-based action determination.

FIG. 4B shows a detailed processing flow for implementing model-basedaction determination techniques in a content management system. As anoption, one or more variations of model-based action determinationtechniques 4B00 or any aspect thereof may be implemented in the contextof the architecture and functionality of the embodiments describedherein and/or in any environment.

The FIGURE is being presented to explain how a classification model canbe trained and queried. Specifically, the FIGURE is being presented toexplain how a classification model can be trained in an unsupervisedmanner by using an output from a rule (e.g., determined action 141_(RULE)).

Referring again to FIG. 4A, after one or more classification rules havefired, and after any conflicts have been resolved (step 408 of FIG. 4A),then the conditions present at that time are identified and associatedwith the determined action. These conditions and the associated actioncan be used in combination to train classification model.

This is depicted in FIG. 4B within the shown model training steps.Specifically, decision 459 serves to determine if there is sufficienttraining data present that relates to the incoming instance ofdetermined action 141 _(RULE). If not, then that incoming instance ofdetermined action 141 _(RULE) is not used for training (e.g.,corresponding to the “No” path of decision 459). This can happen whenthere is insufficient additional information available at that time,and/or when there is additional information available at that time, butthat additional information is merely the same information as was usedto evaluate the rule. More specifically, the model can be trained in anunsupervised manner when the information used to evaluate the rule isconditionally independent from other information that is used as signalinputs to train the model.

Further details regarding general approaches to unsupervised training ofa classification model are described in U.S. application Ser. No.17/163,243 titled “SELECTING CONDITIONALLY INDEPENDENT INPUT SIGNALS FORUNSUPERVISED CLASSIFIER TRAINING” filed on Jan. 29, 2021, which ishereby incorporated by reference in its entirety.

In the example shown, when there is sufficient training data presentthat relates to the incoming instance of determined action 141 _(RULE),then step 460 serves to select a set of model inputs (e.g., historicaldata 111 _(SELECTED)) that are known to be conditionally independentfrom the particular instance of determined action 141 _(RULE). Thehistorical data 111 _(SELECTED) can be gathered using any knowntechnique. In some cases the training module 452 is configured to selectand gather a set of model inputs that are known to be conditionallyindependent from the particular instance of determined action 141_(RULE). The training module can store the relationship between thehistorical data 111 _(SELECTED) and determined action 141 _(RULE) inmodel storage 454.

The constituency of the historical data 111 _(SELECTED) may beinfluenced based on identification of, and existence of historical datathat is apriori known to be pertinent to scenarios or conditions ofinterest. More specifically, the constituency of the historical data 111_(SELECTED) may be influenced based on identification of, and existenceof historical data that is apriori known to be pertinent any of theconditions specified in any of the action determination rules. A sampleset of mappings is provided in Table 1.

TABLE 1 Historical data mapping Rule Condition Selected Historical DataProcessing Applicable Action or Scenario The host of the web conferencehas Examine users of then-current Assign a security label that ‘Role’ =‘EXECUTIVE’ collaboration groups that intersect matches the highestsecurity with the host classification of any collaborating user Overlapbetween known web Extract a set of users from the then- Automaticallyshare the web conference participants and then- current collaborationgroups conference materials with the current collaboration groupsextracted set of users Overlap between known web Extract the highest‘sensitivity’ label Automatically apply the highest conferenceparticipants and one or from the identified collaboration sensitivitylabel from any of the more then-current collaboration groups identifiedcollaboration groups group The ‘topic’ of the web conference is aCorrelate the ‘topic’ to a ‘sensitivity’ Automatically apply theknown-sensitive topic label ‘sensitivity’ label to the web conferencingmaterials The ‘topic’ of the web conference is Correlate the ‘Finance’topic to a Automatically apply the ‘Finance’ ‘sensitivity’ label‘sensitivity’ label to the web conferencing materials The‘web_conference_type’ = Examine users of then-current Retain theautomatically shared ‘webinar’ collaboration groups that intersect webconference materials for a with the host longer period of time Some ofthe user/participants are Evaluate policies that pertain to the Retainseveral copies of the situated in different geographic differentgeographic zones web conference material, each zones with acorrespondence to policies that pertain to the different geographiczones Some of the user/participants are Evaluate policies that pertainto the Retain a copies of the web situated in different geographicdifferent geographic zones conference material only one zones selectedgeographic zone The web conference materials Examine the role or rolesof the Invoke a role-dependent include personally-identifiable personswhose PII is had been workflow for each instance of information (PII)shared in the web conference PII that had been shared A subject documentthat was shared Check historical data to see if any of Raise a securityevent that the by a user/participant in the web the otheruser/participants have other user/participant who conference isindicated to include downloaded the subject document downloaded thesubject personally-identifiable information document is a suspicioususer (PII) A document that was shared by a Check historical data to seeif any of Raise a security event that the user/participant in the webthe other user/participants have other user/participant who conferenceis marked as ‘Internal downloaded the ‘Internal Only’ downloaded the‘Internal Only’ Only’ document document is a suspicious user

In the case that decision 459 determines that there is not sufficienttraining data present that relates to the incoming instance ofdetermined action 141 _(RULE), (e.g., corresponding to the “No” path ofdecision 459), then that specific incoming instance of determined action141 _(RULE), is not used for training. Instead, processing proceeds tothe shown model querying steps. Specifically, and as shown, step 462 ofthe model querying steps serves to formulate a query, where the querycomprises then current historical data that is formulated as stimulus tothe classification model 314. Processing of query 463 is facilitated bythe shown model query processor 456, which accesses the model storage soas to apply the stimulus and capture model outputs. The model queryprocessor is configured to cast model outputs into query results 465. Asshown, the query results include a determined action 141 _(MODEL). Insome cases the query results include multiple determined actions. Step464 serves to extract actions from the query results so as to emitdetermined actions 141 ₀. Which in turn are provided to any computingentity that can initiate the indicated actions.

Additional Embodiments of the Disclosure Instruction Code Examples

FIG. 5 depicts a system 500 as an arrangement of computing modules thatare interconnected so as to operate cooperatively to implement certainof the herein-disclosed embodiments. This and other embodiments presentparticular arrangements of elements that, individually or as combined,serve to form improved technological processes that address determininghow to handle potentially sensitive web conferencing materials. Thepartitioning of system 500 is merely illustrative and other partitionsare possible. As an option, the system 500 may be implemented in thecontext of the architecture and functionality of the embodimentsdescribed herein. Of course, however, the system 500 or any operationtherein may be carried out in any desired environment. The system 500comprises at least one processor and at least one memory, the memoryserving to store program instructions corresponding to the operations ofthe system. As shown, an operation can be implemented in whole or inpart using program instructions accessible by a module. The modules areconnected to one or more communication paths, and any operation cancommunicate with any other operations over said communication paths. Themodules of the system can, individually or in combination, performmethod operations within system 500. Any operations performed withinsystem 500 may be performed in any order unless as may be specified inthe claims. The shown embodiment implements a portion of a computersystem, presented as system 500, comprising one or more computerprocessors to execute a set of program code instructions (module 510)and modules for accessing memory to hold program code instructions toperform: receiving, into a content management system, web conferencingmaterials from a web conferencing facility (module 520), and determiningan action to perform on web conferencing materials by; gathering contentmanagement system metadata, the content management system metadatacomprising at least user profile information of at least one webconference participant (module 530); analyzing the content managementsystem metadata in combination with information from the webconferencing materials (module 540); and determining the action to carryout over the web conferencing materials (module 550).

Variations of the foregoing may include more or fewer of the shownmodules. Certain variations may perform more or fewer (or different)steps and/or certain variations may use data elements in more, or infewer, or in different operations. Still further, some embodimentsinclude variations in the operations performed, and some embodimentsinclude variations of aspects of the data elements used in theoperations.

System Architecture Overview Additional System Architecture Examples

FIG. 6A depicts a block diagram of an instance of a computer system 6A00suitable for implementing embodiments of the present disclosure.Computer system 6A00 includes a bus 606 or other communication mechanismfor communicating information. The bus interconnects subsystems anddevices such as a central processing unit (CPU), or a multi-core CPU(e.g., data processor 607), a system memory (e.g., main memory 608, oran area of random access memory (RAM)), a non-volatile storage device ornon-volatile storage area (e.g., read-only memory 609), an internalstorage device 610 or external storage device 613 (e.g., magnetic oroptical), a data interface 633, a communications interface 614 (e.g.,PHY, MAC, Ethernet interface, modem, etc.). The aforementionedcomponents are shown within processing element partition 601, howeverother partitions are possible. Computer system 6A00 further comprises adisplay 611 (e.g., CRT or LCD), various input devices 612 (e.g.,keyboard, cursor control), and an external data repository 631.

According to an embodiment of the disclosure, computer system 6A00performs specific operations by data processor 607 executing one or moresequences of one or more program instructions contained in a memory.Such instructions (e.g., program instructions 602 ₁, programinstructions 6022, program instructions 6023, etc.) can be contained inor can be read into a storage location or memory from any computerreadable/usable storage medium such as a static storage device or a diskdrive. The sequences can be organized to be accessed by one or moreprocessing entities configured to execute a single process or configuredto execute multiple concurrent processes to perform work. A processingentity can be hardware-based (e.g., involving one or more cores) orsoftware-based, and/or can be formed using a combination of hardware andsoftware that implements logic, and/or can carry out computations and/orprocessing steps using one or more processes and/or one or more tasksand/or one or more threads or any combination thereof.

According to an embodiment of the disclosure, computer system 6A00performs specific networking operations using one or more instances ofcommunications interface 614. Instances of communications interface 614may comprise one or more networking ports that are configurable (e.g.,pertaining to speed, protocol, physical layer characteristics, mediaaccess characteristics, etc.) and any particular instance ofcommunications interface 614 or port thereto can be configureddifferently from any other particular instance. Portions of acommunication protocol can be carried out in whole or in part by anyinstance of communications interface 614, and data (e.g., packets, datastructures, bit fields, etc.) can be positioned in storage locationswithin communications interface 614, or within system memory, and suchdata can be accessed (e.g., using random access addressing, or usingdirect memory access DMA, etc.) by devices such as data processor 607.

Communications link 615 can be configured to transmit (e.g., send,receive, signal, etc.) any types of communications packets (e.g.,communication packet 638 ₁, communication packet 638 _(N)) comprisingany organization of data items. The data items can comprise a payloaddata area 637, a destination address 636 (e.g., a destination IPaddress), a source address 635 (e.g., a source IP address), and caninclude various encodings or formatting of bit fields to populate packetcharacteristics 634. In some cases, the packet characteristics include aversion identifier, a packet or payload length, a traffic class, a flowlabel, etc. In some cases, payload data area 637 comprises a datastructure that is encoded and/or formatted to fit into byte or wordboundaries of the packet.

In some embodiments, hard-wired circuitry may be used in place of or incombination with software instructions to implement aspects of thedisclosure. Thus, embodiments of the disclosure are not limited to anyspecific combination of hardware circuitry and/or software. Inembodiments, the term “logic” shall mean any combination of software orhardware that is used to implement all or part of the disclosure.

The term “computer readable medium” or “computer usable medium” as usedherein refers to any medium that participates in providing instructionsto data processor 607 for execution. Such a medium may take many formsincluding, but not limited to, non-volatile media and volatile media.Non-volatile media includes, for example, optical or magnetic disks suchas disk drives or tape drives. Volatile media includes dynamic memorysuch as RAM.

Common forms of computer readable media include, for example, floppydisk, flexible disk, hard disk, magnetic tape, or any other magneticmedium; CD-ROM or any other optical medium; punch cards, paper tape, orany other physical medium with patterns of holes; RAM, PROM, EPROM,FLASH-EPROM, or any other memory chip or cartridge, or any othernon-transitory computer readable medium. Such data can be stored, forexample, in any form of external data repository 631, which in turn canbe formatted into any one or more storage areas, and which can compriseparameterized storage 639 accessible by a key (e.g., filename, tablename, block address, offset address, etc.).

Execution of the sequences of instructions to practice certainembodiments of the disclosure are performed by a single instance of acomputer system 6A00. According to certain embodiments of thedisclosure, two or more instances of computer system 6A00 coupled by acommunications link 615 (e.g., LAN, public switched telephone network,or wireless network) may perform the sequence of instructions requiredto practice embodiments of the disclosure using two or more instances ofcomponents of computer system 6A00.

Computer system 6A00 may transmit and receive messages such as dataand/or instructions organized into a data structure (e.g.,communications packets). The data structure can include programinstructions (e.g., application code 603), communicated throughcommunications link 615 and communications interface 614. Receivedprogram instructions may be executed by data processor 607 as it isreceived and/or stored in the shown storage device or in or upon anyother non-volatile storage for later execution. Computer system 6A00 maycommunicate through a data interface 633 to a database 632 on anexternal data repository 631. Data items in a database can be accessedusing a primary key (e.g., a relational database primary key).

Processing element partition 601 is merely one sample partition. Otherpartitions can include multiple data processors, and/or multiplecommunications interfaces, and/or multiple storage devices, etc. withina partition. For example, a partition can bound a multi-core processor(e.g., possibly including embedded or co-located memory), or a partitioncan bound a computing cluster having plurality of computing elements,any of which computing elements are connected directly or indirectly toa communications link. A first partition can be configured tocommunicate to a second partition. A particular first partition andparticular second partition can be congruent (e.g., in a processingelement array) or can be different (e.g., comprising disjoint sets ofcomponents).

A module as used herein can be implemented using any mix of any portionsof the system memory and any extent of hard-wired circuitry includinghard-wired circuitry embodied as a data processor 607. Some embodimentsinclude one or more special-purpose hardware components (e.g., powercontrol, logic, sensors, transducers, etc.). Some embodiments of amodule include instructions that are stored in a memory for execution soas to facilitate operational and/or performance characteristicspertaining to handling web conference assets in a content managementsystem. A module may include one or more state machines and/orcombinational logic used to implement or facilitate the operationaland/or performance characteristics pertaining to handling web conferenceassets in a content management system.

Various implementations of database 632 comprise storage media organizedto hold a series of records or files such that individual records orfiles are accessed using a name or key (e.g., a primary key or acombination of keys and/or query clauses). Such files or records can beorganized into one or more data structures (e.g., data structures usedto implement or facilitate aspects of handling web conference assets ina content management system). Such files, records, or data structurescan be brought into and/or stored in volatile or non-volatile memory.More specifically, the occurrence and organization of the foregoingfiles, records, and data structures improve the way that the computerstores and retrieves data in memory, for example, to improve the waydata is accessed when the computer is performing operations pertainingto handling web conference assets in a content management system, and/orfor improving the way data is manipulated when performing computerizedoperations pertaining to combining metadata of the content managementsystem with metadata of the web conferencing materials to determineoptions for handling web conference assets.

FIG. 6B depicts a block diagram of an instance of a cloud-basedenvironment 6B00. Such a cloud-based environment supports access toworkspaces through the execution of workspace access code (e.g.,workspace access code 642 ₀, workspace access code 642 ₁, and workspaceaccess code 6422). Workspace access code can be executed on any ofaccess devices 652 (e.g., laptop device 6524, workstation device 6525,IP phone device 6523, tablet device 6522, smart phone device 652 ₁,etc.), and can be configured to access any type of object. Strictly asexamples, such objects can be folders or directories or can be files ofany filetype. The files or folders or directories can be organized intoany hierarchy. Any type of object can comprise or be associated withaccess permissions. The access permissions in turn may correspond todifferent actions to be taken over the object. Strictly as one example,a first permission (e.g., PREVIEW_ONLY) may be associated with a firstaction (e.g., preview), while a second permission (e.g., READ) may beassociated with a second action (e.g., download), etc. Furthermore,permissions may be associated to any particular user or any particulargroup of users.

A group of users can form a collaborator group 658, and a collaboratorgroup can be composed of any types or roles of users. For example, andas shown, a collaborator group can comprise a user collaborator, anadministrator collaborator, a creator collaborator, etc. Any user canuse any one or more of the access devices, and such access devices canbe operated concurrently to provide multiple concurrent sessions and/orother techniques to access workspaces through the workspace access code.

A portion of workspace access code can reside in and be executed on anyaccess device. Any portion of the workspace access code can reside inand be executed on any computing platform 651, including in a middlewaresetting. As shown, a portion of the workspace access code resides in andcan be executed on one or more processing elements (e.g., processingelement 605 ₁). The workspace access code can interface with storagedevices such as networked storage 655. Storage of workspaces and/or anyconstituent files or objects, and/or any other code or scripts or datacan be stored in any one or more storage partitions (e.g., storagepartition 604 ₁). In some environments, a processing element includesforms of storage, such as RAM and/or ROM and/or FLASH, and/or otherforms of volatile and non-volatile storage.

A stored workspace can be populated via an upload (e.g., an upload froman access device to a processing element over an upload network path657). A stored workspace can be delivered to a particular user and/orshared with other particular users via a download (e.g., a download froma processing element to an access device over a download network path659).

In the foregoing specification, the disclosure has been described withreference to specific embodiments thereof. It will, however, be evidentthat various modifications and changes may be made thereto withoutdeparting from the broader spirit and scope of the disclosure. Forexample, the above-described process flows are described with referenceto a particular ordering of process actions. However, the ordering ofmany of the described process actions may be changed without affectingthe scope or operation of the disclosure. The specification and drawingsare to be regarded in an illustrative sense rather than in a restrictivesense.

What is claimed is:
 1. A method for web conference asset management, themethod comprising: responsive to receiving, into a content managementsystem, web conferencing materials from a web conferencing facility,determine an action to perform on web conferencing materials by:gathering content management system metadata, the content managementsystem metadata comprising at least user profile information of at leastone web conference participant; analyzing the content management systemmetadata in combination with information from the web conferencingmaterials; and determining the action to carry out over the webconferencing materials.